package com.apanal.qlife.sys.service;

import java.io.IOException;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.apanal.qlife.common.page.Page;
import com.apanal.qlife.common.page.PageReturn;
import com.apanal.qlife.property.model.Joinus;
import com.apanal.qlife.sys.model.Feedback;

/**
 * 意见反馈服务层接口
 * 
 * @author shuliangxing
 * 
 * @date 2015-1-14上午11:34:36
 */
public interface FeedbackService {

	/**
	 * 根据id硬删除
	 * 
	 * @param feeId
	 * @return
	 */
	String deleteById(Long feeId);

	/**
	 * 新增
	 * 
	 * @param record
	 * @return
	 */
	String insert(Feedback record);

	/**
	 * 根据非空字段新增
	 * 
	 * @param record
	 * @return
	 */
	String insertSelective(Feedback record);

	/**
	 * 根据id查询
	 * 
	 * @param feeId
	 * @return
	 */
	Feedback selectById(Long feeId);

	/**
	 * 根据id更新
	 * 
	 * @param record
	 * @return
	 */
	String updateById(Feedback record);

	/**
	 * 根据id和非空字段更新
	 * 
	 * @param record
	 * @param request
	 * @return
	 */
	String updateByIdSelective(Feedback record);

	// 分割线

	/**
	 * 根据id查询反馈和相关信息
	 * 
	 * @param record
	 * @return
	 */
	Feedback selectRelationById(Long id);

	/**
	 * 分页查询系统意见反馈
	 * 
	 * @param entity
	 * @param page
	 * @return
	 */
	PageReturn<Feedback> selectSysfdForPage(Feedback entity, Page page);

	/**
	 * 导出excel
	 * 
	 * @param list
	 * @param response
	 */
	void exportExcel(List<Feedback> list, String type,
			HttpServletRequest request, HttpServletResponse response)
			throws IOException;

	PageReturn<Feedback> findAppfdList(Feedback feedback, Page page);

	PageReturn<Joinus> findAppContractList(Joinus joinus, Page page);

}
